home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 26 / AMIGAplus Sonderheft 26 (2000)(Falke)(DE)(Track 1 of 2)[!].iso / Tools / Text-Viewer / Notes / english / Basskey.rexx < prev    next >
OS/2 REXX Batch file  |  1999-03-29  |  41KB  |  1,355 lines

  1. /* subprogram for Notes.pprx */
  2.  
  3. signal on halt
  4. signal on break_c
  5. signal on break_e
  6. signal on break_d
  7. call ppm_SetStyle(N)
  8.  
  9. noteneingabe:
  10.     /* smallest notedistance */
  11.     sysart = "notesystem:2"
  12.     systemart = ppm_Getform("Pleace repeat your choice of the notesystems... (2, 1v oder 1b)", 3, sysart)
  13.     select
  14.     when systemart == '2' then zdist = 4
  15.     when systemart == '1v' then zdist = 2
  16.     when systemart == '1b' then zdist = 2
  17.     otherwise noteneingabe()
  18.     end
  19.     zdist2 = zdist-2
  20.     xgrdform = "(1,2,4,8 oder 16)"
  21.     xgrd = ppm_GetForm("Pleace give in the smallest note distance ...(nothing=Break!)", 3, xgrdform)
  22.     if xgrd == '' then  exit_msg("Break")
  23.     select
  24.      when xgrd == '1' then xg =0.7
  25.      when xgrd == '2' then xg =1.4
  26.      when xgrd == '4' then xg =2.8
  27.      when xgrd == '8' then xg =5.6
  28.      when xgrd == '16' then xg =11.2
  29.      otherwise notenwert()
  30.     end
  31.  
  32.    /* pointmessure of the notes */
  33.    notepkt = 26
  34.    call ppm_SetJustification(0)
  35.  
  36.    zz = 0 /* linecounter (german=Zeilenzähler) */
  37.    notex = 0
  38.    notey = 0
  39.    page = ppm_CurrentPage()
  40.  
  41. clickpos:
  42.    res = ppm_GetUserText(2, "Manual or align to Box? m/b")
  43.    if res == 'M' then res = 'm'
  44.    if res == 'B' then res = 'b'
  45. click:
  46.  select
  47.    when res == 'm' then
  48.      do
  49.        clickpos = ppm_GetClickPosition("Pleace click on the place, where I shall begin...")
  50.        if clickpos == 0 then
  51.            do
  52.            click()
  53.            end
  54.        else
  55.            do
  56.            notey = word(clickpos, 2)
  57.            notex = word(clickpos, 1)
  58.            if notex < 2.5 then notex = 2.5
  59.            xw = notex
  60.            yw = notey
  61.            if systemart ~= '2' then
  62.             do
  63.              if notey <= 3.3  then zz= 0   /* zz ist ZeilenZähler */
  64.              if ((notey > 3.5)&(notey < 5.3)) then zz = 2
  65.              if ((notey > 5.5)&(notey < 7.3)) then zz = 4
  66.              if ((notey > 7.5)&(notey < 9.3)) then zz = 6
  67.              if ((notey > 9.5)&(notey < 11.3)) then zz = 8
  68.              if ((notey > 11.5)&(notey < 13.3)) then zz = 10
  69.              if ((notey > 13.5)&(notey < 15.3)) then zz = 12
  70.              if ((notey > 15.5)&(notey < 17.3)) then zz = 14
  71.              if ((notey > 17.5)&(notey < 19.3)) then zz = 16
  72.              if ((notey > 19.5)&(notey < 21.3)) then zz = 18
  73.              if ((notey > 21.5)&(notey < 23.3)) then zz = 20
  74.              if ((notey > 23.5)&(notey < 25.3)) then zz = 22
  75.              if notey > 25.3 then noteneingabe()
  76.             end
  77.            else
  78.             do
  79.              if notey <= 3.3  then zz= 0   /* zz is linecounter */
  80.              if ((notey > 3.5)&(notey < 5.3)) then zz = 4
  81.              if ((notey > 5.5)&(notey < 11.3)) then zz = 8
  82.              if ((notey > 11.5)&(notey < 15.3)) then zz = 12
  83.              if ((notey > 15.5)&(notey < 19.3)) then zz = 16
  84.              if ((notey > 19.5)&(notey < 23.3)) then zz = 20
  85.              if notey > 25.3 then noteneingabe()
  86.             end
  87.            end
  88.      end
  89.    when res == 'b' then
  90. clickb:
  91.       do
  92.         clickbox = ppm_ClickOnBox("Pleace click on a box, where I shall work away ...")
  93.         if clickbox == '' then clickb()
  94.         pos = ppm_GetBoxPosition(clickbox)
  95.         notex = word(pos, 1)
  96.         notey = word(pos, 2)
  97.         xw = notex
  98.         yw = notey
  99.         call ppm_BoxAtPosn(notex, notey, page)
  100.         if systemart ~= '2' then
  101.          do
  102.           if notey <= 3.3  then zz= 0   /* zz ist ZeilenZähler */
  103.           if ((notey > 3.5)&(notey < 5.3)) then zz = 2
  104.           if ((notey > 5.5)&(notey < 7.3)) then zz = 4
  105.           if ((notey > 7.5)&(notey < 9.3)) then zz = 6
  106.           if ((notey > 9.5)&(notey < 11.3)) then zz = 8
  107.           if ((notey > 11.5)&(notey < 13.3)) then zz = 10
  108.           if ((notey > 13.5)&(notey < 15.3)) then zz = 12
  109.           if ((notey > 15.5)&(notey < 17.3)) then zz = 14
  110.           if ((notey > 17.5)&(notey < 19.3)) then zz = 16
  111.           if ((notey > 19.5)&(notey < 21.3)) then zz = 18
  112.           if ((notey > 21.5)&(notey < 23.3)) then zz = 20
  113.           if ((notey > 23.5)&(notey < 25.3)) then zz = 22
  114.           if notey > 25.3 then noteneingabe()
  115.          end
  116.         else
  117.          do
  118.           if notey <= 3.3  then zz= 0   /* zz ist ZeilenZähler */
  119.           if ((notey > 3.5)&(notey < 5.3)) then zz = 4
  120.           if ((notey > 5.5)&(notey < 11.3)) then zz = 8
  121.           if ((notey > 11.5)&(notey < 15.3)) then zz = 12
  122.           if ((notey > 15.5)&(notey < 19.3)) then zz = 16
  123.           if ((notey > 19.5)&(notey < 23.3)) then zz = 20
  124.           if notey > 25.3 then noteneingabe()
  125.          end
  126.         if notex <= 1 then
  127.         do
  128.           noteneingabe()
  129.         end
  130.       end
  131.    otherwise clickpos()
  132.  end
  133.  
  134.    /* pointerbox */
  135.  
  136.    zbid = ppm_CreateBox(notex, zz+zdist2+0.5, 0.3, 1, 0)
  137.    call ppm_SetSize(26)
  138.    zbn = ppm_GetBoxName(zbid)
  139.    call ppm_TextIntoBox(zbn, '5')
  140.  
  141. notenwert:
  142.  
  143.    do forever
  144.            cr = '0a'x
  145.            form = "worth name ['n'at.]"
  146.            call ppm_SetBoxPosition(zbid, notex, zz+zdist2+0.5)
  147.            call ppm_UpdateScreen()
  148.            eingabe = ppm_GetForm("Please give in for the notes ...(nothing=BREAK )", 9, form)
  149.            if eingabe == '' then
  150.            do
  151.             call ppm_DeleteBox(zbid)
  152.             exit_msg("Break")
  153.            end
  154.            nw = word(eingabe, 1)
  155.            if nw == 'P' then nw = 'p'
  156.            nn = word(eingabe, 2)
  157.            al = word(eingabe, 3)
  158.            if al == 'N' then al = 'n'
  159.            IF nw == 'D' then nw = 'd'
  160.            if nw == 'C' then nw = 'C'
  161.            if nw == 'L' then nw = 'l'
  162.            if nn == 'L' then nn = 'l'
  163.            if nw == "NEW" then nw = "new"
  164.  
  165.  
  166.             select
  167.               when nn=='DB1' then nn = 'Db1'
  168.               when nn=='EB1' then nn = 'Eb1'
  169.               when nn=='GB1' then nn = 'Gb1'
  170.               when nn=='AB1' then nn = 'Ab1'
  171.               when nn=='BB1' then nn = 'Bb1'
  172.               when nn=='DB2' then nn = 'Db2'
  173.               when nn=='EB2' then nn = 'Eb2'
  174.               when nn=='GB2' then nn = 'Gb2'
  175.               when nn=='AB2' then nn = 'Ab2'
  176.               when nn=='BB2' then nn = 'Bb2'
  177.               when nn=='DB3' then nn = 'Db3'
  178.               when nn=='EB3' then nn = 'Eb3'
  179.               when nn=='GB3' then nn = 'Gb3'
  180.               when nn=='AB3' then nn = 'Ab3'
  181.               otherwise NOP
  182.             end
  183.  
  184.     /* x-distance of the notes*/
  185. auswahl:
  186.      select
  187.       when nw == 's' then
  188.           do
  189.           xw = xg/16
  190.           nw='x'
  191.           yv = 0
  192.           end
  193.       when nw  == 'S' then
  194.           do
  195.           xw = xg/16
  196.           nw='X'
  197.           yv = 0.47
  198.           end
  199.       when nw == 'e' then
  200.           do
  201.           xw = xg/8
  202.           nw='e'
  203.           yv = 0
  204.           end
  205.       when nw == 'E' then
  206.           do
  207.           xw = xg/8
  208.           nw='E'
  209.           yv = 0.47
  210.           end
  211.       when nw == 'q' then
  212.           do
  213.           xw = xg/4
  214.           nw='q'
  215.           yv = 0
  216.           end
  217.       when nw == 'Q' then
  218.           do
  219.           xw = xg/4
  220.           nw='Q'
  221.           yv = 0.47
  222.           end
  223.       when nw == 'h' then
  224.           do
  225.           xw = xg/2
  226.           yv = 0
  227.           end
  228.       when nw == 'H' then
  229.           do
  230.           xw = xg/2
  231.           yv = 0.47
  232.           end
  233.       when nw == 'w' then
  234.           do
  235.           xw = xg
  236.           nw='w'
  237.           yv = 0
  238.           end
  239.       when nw == 'W' then
  240.           do
  241.           xw = xg
  242.           nw='W'
  243.           yv = 0.47
  244.           end
  245.  
  246.       /*Point after the note*/
  247.  
  248.       when nw == 'pt' then
  249.           do
  250.             if notex < 3 then
  251.             do
  252.               notex = bakx
  253.               zz = zz - zdist
  254.               call ppm_SetSize(25)
  255.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  256.               call ppm_SetSize(20)
  257.               call ppm_TextIntoBox(box#id, 'd')
  258.             end
  259.             else
  260.             do
  261.               call ppm_SetSize(25)
  262.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  263.               call ppm_SetSize(20)
  264.               call ppm_TextIntoBox(box#id, 'd')
  265.             end
  266.  
  267.            select
  268.                when nn == '1' then
  269.                do
  270.                xw = xg
  271.                notex = notex+xw
  272.                end
  273.                when nn == '2' then
  274.                do
  275.                xw = xg/2
  276.                notex = notex+xw
  277.                end
  278.                when nn == '4' then
  279.                do
  280.                xw = xg/4
  281.                notex = notex+xw
  282.                end
  283.                when nn == '8' then
  284.                do
  285.                xw = xg/8
  286.                notex = notex+xw
  287.                end
  288.                when nn == '16' then
  289.                do
  290.                xw  = xg/16
  291.                notex = notex+xw
  292.                end
  293.                when nn == 'l' then
  294.                do
  295.                xw  = 0.2
  296.                notex = notex+xw
  297.                end
  298.                otherwise notenwert()
  299.            end
  300.            if notex >=18.7 then
  301.                do
  302.                  notex = 2.5
  303.                  zz = zz + zdist
  304.                end
  305.            px = notex - 4
  306.            py = zz-1
  307.            if px < 0 then px = 0
  308.            call ppm_SetPagePosition(px, py+1.5)
  309.            notenwert()
  310.  
  311.           end
  312.  
  313.       when nw == 'PT' then
  314.           do
  315.             if notex < 3 then
  316.             do
  317.               notex = bakx
  318.               zz = zz - zdist
  319.               call ppm_SetSize(25)
  320.               box#id = ppm_CreateBox(notex+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  321.               call ppm_SetSize(20)
  322.               call ppm_TextIntoBox(box#id, 'd')
  323.             end
  324.             else
  325.             do
  326.               call ppm_SetSize(25)
  327.               box#id = ppm_CreateBox(notex-xw+0.4, yw+zz+0.26-yv, 0.3, 0.9, 0)
  328.               call ppm_SetSize(20)
  329.               call ppm_TextIntoBox(box#id, 'd')
  330.             end
  331.            select
  332.                when nn == '1' then
  333.                do
  334.                xw = xg
  335.                notex = notex+xw
  336.                end
  337.                when nn == '2' then
  338.                do
  339.                xw = xg/2
  340.                notex = notex+xw
  341.                end
  342.                when nn == '4' then
  343.                do
  344.                xw = xg/4
  345.                notex = notex+xw
  346.                end
  347.                when nn == '8' then
  348.                do
  349.                xw = xg/8
  350.                notex = notex+xw
  351.                end
  352.                when nn == '16' then
  353.                do
  354.                xw  = xg/16
  355.                notex = notex+xw
  356.                end
  357.                when nn == 'l' then
  358.                do
  359.                xw  = 0.2
  360.                notex = notex+xw
  361.                end
  362.                otherwise notenwert()
  363.            end
  364.            if notex >=18.7 then
  365.                do
  366.                  notex = 2.5
  367.                  zz = zz + zdist
  368.                end
  369.            px = notex - 4
  370.            py = zz-1
  371.            if px < 0 then px = 0
  372.            call ppm_SetPagePosition(px, py+1.5)
  373.            notenwert()
  374.           end
  375.  
  376.  
  377.      /* Delete */
  378.       when nw == 'd' then
  379.           do
  380.            oldpos = notex
  381.            thisbox = ppm_BoxNum()
  382.            if thisbox == zbid then
  383.              do
  384.              ppm_Inform(1, "Nothing to delete!","OK")
  385.              notenwert()
  386.              end
  387.            lpos= ppm_GetBoxPosition()
  388.            notex = word(lpos, 1)
  389.            call ppm_DeleteBox()
  390.            diff = oldpos - notex
  391.            if (diff < 0.3)&(diff > 0.1) then notex = notex + 0.23
  392.            py = zz - 1
  393.            px = notex - 4
  394.            if px < 0 then px = 0
  395.            call ppm_SetPagePosition(px, py+1.5)
  396.            notenwert()
  397.           end
  398.  
  399.       /* barline */
  400.       when nw == 'l' then
  401.           do
  402.            call ppm_SetLineWeight(0.25)
  403.            call ppm_DrawLine(notex, 2+zz+zdist2, notex, 2.8+zz+zdist2)
  404.            notex = notex+0.2
  405.           end
  406.  
  407.  
  408.       when nw == 'p' | when nw == 'P' then
  409.       do
  410. pausenwert:
  411.         x = notex
  412.         select
  413.             when nn == '1' then do
  414.  
  415.                 y = 2.29+zz+zdist2
  416.                 call ppm_SetLineWeight(4)
  417.                 call ppm_DrawLine(x, y, x+0.4, y)
  418.                 call ppm_SetLineWeight(0.25)
  419.                 xw = xg
  420.                 notex = notex+xw
  421.             end
  422.  
  423.             when nn == '2' then do
  424.  
  425.                 y = 2.33+zz+zdist2
  426.                 call ppm_SetLineWeight(4)
  427.                 call ppm_DrawLine(x, y, x+0.4, y)
  428.                 call ppm_SetLineWeight(0.25)
  429.                 xw = xg/2
  430.                 notex = notex+xw
  431.             end
  432.  
  433.             when nn == '4' then do
  434.  
  435.                 y = 2.07+zz+zdist2
  436.                 Pbox = ppm_CreateBox(x, y, 0.59, 0.86, 0)
  437.                 boxnm = ppm_DocNextBox(Pbox)
  438.                 call ppm_DeleteContents(boxnm)
  439.                 call ppm_ImportGraphic(boxnm, 'Genies:note_pause/quarterpause', pause)
  440.                 xw = xg/4
  441.                 notex = notex+xw
  442.             end
  443.  
  444.             when nn == '8' then do
  445.  
  446.                 y = 2.21+zz+zdist2
  447.                 Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  448.                 boxnm = ppm_DocNextBox(Pbox)
  449.                 call ppm_DeleteContents(boxnm)
  450.                 call ppm_ImportGraphic(boxnm, 'Genies:note_pause/eighthpause', pause)
  451.                 xw = xg/8
  452.                 notex = notex+xw
  453.             end
  454.  
  455.             when nn == '16' then do
  456.  
  457.                 y = 2.21+zz+zdist2
  458.                 Pbox = ppm_CreateBox(x, y, 0.27, 0.42, 0)
  459.                 boxnm = ppm_DocNextBox(Pbox)
  460.                 call ppm_DeleteContents(boxnm)
  461.                 call ppm_ImportGraphic(boxnm, 'Genies:note_pause/sixteenthpause', pause)
  462.                 xw = xg/16
  463.                 notex = notex+xw
  464.             end
  465.         otherwise notenwert()
  466.         end
  467.         if notex >=18.7 then
  468.             do
  469.               notex = 2.5
  470.               zz = zz + zdist
  471.             end
  472.         px = notex - 4
  473.         py = zz-1
  474.         if px < 0 then px = 0
  475.         call ppm_SetPagePosition(px, py+1.5)
  476.         notenwert()
  477.       end
  478.  
  479.     /* spaces */
  480.  
  481.       when nw == 'c' then
  482.         do
  483.            select
  484.                when nn == '1' then
  485.                do
  486.                xw = xg
  487.                notex = notex+xw
  488.                end
  489.                when nn == '2' then
  490.                do
  491.                xw = xg/2
  492.                notex = notex+xw
  493.                end
  494.                when nn == '4' then
  495.                do
  496.                xw = xg/4
  497.                notex = notex+xw
  498.                end
  499.                when nn == '8' then
  500.                do
  501.                xw = xg/8
  502.                notex = notex+xw
  503.                end
  504.                when nn == '16' then
  505.                do
  506.                xw  = xg/16
  507.                notex = notex+xw
  508.                end
  509.                when nn == 'l' then
  510.                do
  511.                xw  = 0.2
  512.                notex = notex+xw
  513.                end
  514.                otherwise notenwert()
  515.            end
  516.            if notex >=18.7 then
  517.                do
  518.                  notex = 2.5
  519.                  zz = zz + zdist
  520.                end
  521.            px = notex - 4
  522.            py = zz-1
  523.            if px < 0 then px = 0
  524.            call ppm_SetPagePosition(px, py+1.5)
  525.            notenwert()
  526.         end
  527.  
  528.       when nw == 'new' then
  529.         do
  530.           call ppm_DeleteBox(zbid)
  531.           clickpos()
  532.         end
  533.       otherwise notenwert()
  534.       end
  535.  
  536.         /* y-distance of the notes - notestem to top */
  537.  
  538.        call ppm_SetLineWeight(0.25)
  539.  
  540.       select
  541.         when nn=='g#3'  then
  542.         do
  543.             yw = 0.745 + zdist2
  544.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  545.             call ppm_SetSize(20)
  546.             call ppm_TextIntoBox(box#id, 's')
  547.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  548.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  549.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  550.         end
  551.  
  552.         when nn=='g3'  then
  553.         do
  554.             yw = 0.745 + zdist2
  555.             if al == 'n' then call auflhoch()
  556.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  557.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  558.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  559.         end
  560.  
  561.         when nn=='gb3' then
  562.         do
  563.             yw = 0.745 + zdist2
  564.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  565.             call ppm_SetSize(20)
  566.             call ppm_TextIntoBox(box#id, 'f')
  567.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  568.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  569.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  570.         end
  571.  
  572.         when nn=='f#3'  then
  573.         do
  574.             yw = 0.845 + zdist2
  575.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  576.             call ppm_SetSize(20)
  577.             call ppm_TextIntoBox(box#id, 's')
  578.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  579.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  580.         end
  581.  
  582.         when nn=='f3'  then
  583.         do
  584.             yw = 0.845 + zdist2
  585.             if al == 'n' then call auflhoch()
  586.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  587.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  588.         end
  589.  
  590.         when nn=='e#3'  then
  591.         do
  592.             yw = 0.945 + zdist2
  593.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  594.             call ppm_SetSize(20)
  595.             call ppm_TextIntoBox(box#id, 's')
  596.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  597.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  598.         end
  599.  
  600.         when nn=='e3'  then
  601.         do
  602.             yw = 0.945 + zdist2
  603.             if al == 'n' then call auflhoch()
  604.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  605.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  606.         end
  607.  
  608.         when nn=='eb3' then
  609.         do
  610.             yw = 0.945 + zdist2
  611.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  612.             call ppm_SetSize(20)
  613.             call ppm_TextIntoBox(box#id, 'f')
  614.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  615.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  616.         end
  617.  
  618.         when nn=='d#3'  then
  619.         do
  620.             yw = 1.045 + zdist2
  621.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  622.             call ppm_SetSize(20)
  623.             call ppm_TextIntoBox(box#id, 's')
  624.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  625.         end
  626.  
  627.         when nn=='d3' then
  628.         do
  629.             yw = 1.045 + zdist2
  630.             if al == 'n' then call auflhoch()
  631.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  632.         end
  633.  
  634.         when nn=='db3'    then
  635.         do
  636.             yw = 1.045 + zdist2
  637.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  638.             call ppm_SetSize(20)
  639.             call ppm_TextIntoBox(box#id, 'f')
  640.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  641.         end
  642.  
  643.         when nn=='c#3'    then
  644.         do
  645.             yw = 1.145 + zdist2
  646.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  647.             call ppm_SetSize(20)
  648.             call ppm_TextIntoBox(box#id, 's')
  649.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  650.         end
  651.  
  652.         when nn=='c3'     then
  653.         do
  654.             yw = 1.145 + zdist2
  655.             if al == 'n' then call auflhoch()
  656.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  657.         end
  658.  
  659.         when nn=='b2'     then
  660.         do
  661.             yw = 1.245 + zdist2
  662.             if al == 'n' then call auflhoch()
  663.         end
  664.         when nn=='bb2'     then
  665.         do
  666.             yw = 1.245 + zdist2
  667.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  668.             call ppm_SetSize(20)
  669.             call ppm_TextIntoBox(box#id, 'f')
  670.         end
  671.  
  672.         when nn=='a#2'    then
  673.         do
  674.             yw = 1.345 + zdist2
  675.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  676.             call ppm_SetSize(20)
  677.             call ppm_TextIntoBox(box#id, 's')
  678.         end
  679.  
  680.         when nn=='a2'     then
  681.         do
  682.             yw = 1.345 + zdist2
  683.             if al == 'n' then call auflhoch()
  684.         end
  685.         when nn=='ab2'    then
  686.         do
  687.             yw = 1.345 + zdist2
  688.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  689.             call ppm_SetSize(20)
  690.             call ppm_TextIntoBox(box#id, 'f')
  691.         end
  692.  
  693.         when nn=='g#2'    then
  694.         do
  695.             yw = 1.445 + zdist2
  696.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  697.             call ppm_SetSize(20)
  698.             call ppm_TextIntoBox(box#id, 's')
  699.         end
  700.  
  701.         when nn=='g2'     then
  702.         do
  703.             yw = 1.445 + zdist2
  704.             if al == 'n' then call auflhoch()
  705.         end
  706.         when nn=='gb2'    then
  707.         do
  708.             yw = 1.445 + zdist2
  709.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  710.             call ppm_SetSize(20)
  711.             call ppm_TextIntoBox(box#id, 'f')
  712.         end
  713.  
  714.         when nn=='f#2'    then
  715.         do
  716.             yw = 1.545 + zdist2
  717.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  718.             call ppm_SetSize(20)
  719.             call ppm_TextIntoBox(box#id, 's')
  720.         end
  721.  
  722.         when nn=='f2' then
  723.         do
  724.             yw = 1.545 + zdist2
  725.             if al == 'n' then call auflhoch()
  726.         end
  727.         when nn=='e#2'  then
  728.         do
  729.             yw = 1.645 + zdist2
  730.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  731.             call ppm_SetSize(20)
  732.             call ppm_TextIntoBox(box#id, 's')
  733.         end
  734.         when nn=='e2'     then
  735.         do
  736.             yw = 1.645 + zdist2
  737.             if al == 'n' then call auflhoch()
  738.         end
  739.         when nn=='eb2'    then
  740.         do
  741.             yw = 1.645 + zdist2
  742.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  743.             call ppm_SetSize(20)
  744.             call ppm_TextIntoBox(box#id, 'f')
  745.         end
  746.  
  747.         when nn=='d#2'    then
  748.         do
  749.             yw = 1.745 + zdist2
  750.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  751.             call ppm_SetSize(20)
  752.             call ppm_TextIntoBox(box#id, 's')
  753.         end
  754.  
  755.         when nn=='d2'     then
  756.         do
  757.             yw = 1.745 + zdist2
  758.             if al == 'n' then call auflhoch()
  759.         end
  760.         when nn=='db2'    then
  761.         do
  762.             yw = 1.745 + zdist2
  763.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  764.             call ppm_SetSize(20)
  765.             call ppm_TextIntoBox(box#id, 'f')
  766.         end
  767.  
  768.         when nn=='c#2'    then
  769.         do
  770.             yw = 1.845 + zdist2
  771.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  772.             call ppm_SetSize(20)
  773.             call ppm_TextIntoBox(box#id, 's')
  774.         end
  775.  
  776.         when nn=='c2'     then
  777.         do
  778.             yw = 1.845 + zdist2
  779.             if al == 'n' then call auflhoch()
  780.         end
  781.         when nn=='b1'     then
  782.         do
  783.             yw = 1.945 + zdist2
  784.             if al == 'n' then call auflhoch()
  785.         end
  786.         when nn=='bb1'     then
  787.         do
  788.             yw = 1.945 + zdist2
  789.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  790.             call ppm_SetSize(20)
  791.             call ppm_TextIntoBox(box#id, 'f')
  792.         end
  793.  
  794.         when nn=='a#1'    then
  795.         do
  796.             yw = 2.045 + zdist2
  797.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  798.             call ppm_SetSize(20)
  799.             call ppm_TextIntoBox(box#id, 's')
  800.         end
  801.  
  802.         when nn=='a1'     then
  803.         do
  804.             yw = 2.045 + zdist2
  805.             if al == 'n' then call auflhoch()
  806.         end
  807.         when nn=='ab1'    then
  808.         do
  809.             yw = 2.045 + zdist2
  810.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  811.             call ppm_SetSize(20)
  812.             call ppm_TextIntoBox(box#id, 'f')
  813.         end
  814.  
  815.         when nn=='g#1'    then
  816.         do
  817.             yw = 2.145 + zdist2
  818.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  819.             call ppm_SetSize(20)
  820.             call ppm_TextIntoBox(box#id, 's')
  821.         end
  822.  
  823.         when nn=='g1'     then
  824.         do
  825.             yw = 2.145 + zdist2
  826.             if al == 'n' then call auflhoch()
  827.         end
  828.         when nn=='gb1'    then
  829.         do
  830.             yw = 2.145 + zdist2
  831.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  832.             call ppm_SetSize(20)
  833.             call ppm_TextIntoBox(box#id, 'f')
  834.         end
  835.  
  836.         when nn=='f#1'    then
  837.         do
  838.             yw = 2.245 + zdist2
  839.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  840.             call ppm_SetSize(20)
  841.             call ppm_TextIntoBox(box#id, 's')
  842.         end
  843.  
  844.         when nn=='f1'     then
  845.         do
  846.             yw = 2.245 + zdist2
  847.             if al == 'n' then call auflhoch()
  848.         end
  849.  
  850.         when nn=='e#1'  then
  851.         do
  852.             yw = 2.345 + zdist2
  853.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  854.             call ppm_SetSize(20)
  855.             call ppm_TextIntoBox(box#id, 's')
  856.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  857.         end
  858.         when nn=='e1' then
  859.         do
  860.             yw = 2.345 + zdist2
  861.             if al == 'n' then call auflhoch()
  862.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  863.         end
  864.  
  865.         when nn=='eb1'  then
  866.         do
  867.             yw = 2.345 + zdist2
  868.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  869.             call ppm_SetSize(20)
  870.             call ppm_TextIntoBox(box#id, 'f')
  871.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  872.         end
  873.  
  874.         when nn=='d#1'  then
  875.         do
  876.             yw = 2.445 + zdist2
  877.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  878.             call ppm_SetSize(20)
  879.             call ppm_TextIntoBox(box#id, 's')
  880.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  881.         end
  882.  
  883.         when nn=='d1'  then
  884.         do
  885.             yw = 2.445 + zdist2
  886.             if al == 'n' then call auflhoch()
  887.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  888.         end
  889.  
  890.         when nn=='db1' then
  891.         do
  892.             yw = 2.445 + zdist2
  893.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.21, 0.35, 0.75, 0)
  894.             call ppm_SetSize(20)
  895.             call ppm_TextIntoBox(box#id, 'f')
  896.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  897.         end
  898.  
  899.         when nn=='c#1'  then
  900.         do
  901.             yw = 2.545 + zdist2
  902.             box#id = ppm_CreateBox(notex-0.22, yw+zz+zdist2+0.32, 0.35, 0.75, 0)
  903.             call ppm_SetSize(20)
  904.             call ppm_TextIntoBox(box#id, 's')
  905.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  906.             call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  907.         end
  908.  
  909.         when nn=='c1'  then
  910.         do
  911.             yw = 2.545 + zdist2
  912.             if al == 'n' then call auflhoch()
  913.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  914.             call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  915.         end
  916.  
  917.     /* y-Raster der Noten - Notenhälse nach unten */
  918.  
  919.         when nn=='G#3'  then
  920.         do
  921.             yw = 1.22 + zdist2
  922.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  923.             call ppm_SetSize(20)
  924.             call ppm_TextIntoBox(box#id, 's')
  925.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  926.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  927.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  928.         end
  929.  
  930.         when nn=='G3'  then
  931.         do
  932.             yw = 1.22 + zdist2
  933.             if al == 'n' then call aufltief()
  934.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  935.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  936.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  937.         end
  938.  
  939.         when nn=='Gb3' then
  940.         do
  941.             yw = 1.22 + zdist2
  942.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  943.             call ppm_SetSize(20)
  944.             call ppm_TextIntoBox(box#id, 'f')
  945.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  946.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  947.             call ppm_DrawLine(notex, zz+zdist2+1.4, (notex+0.4), zz+zdist2+1.4)
  948.         end
  949.  
  950.         when nn=='F#3'  then
  951.         do
  952.             yw = 1.32 + zdist2
  953.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  954.             call ppm_SetSize(20)
  955.             call ppm_TextIntoBox(box#id, 's')
  956.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  957.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  958.         end
  959.  
  960.         when nn=='F3'  then
  961.         do
  962.             yw = 1.32 + zdist2
  963.             if al == 'n' then call aufltief()
  964.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  965.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  966.         end
  967.  
  968.         when nn=='E#3'  then
  969.         do
  970.             yw = 1.42 + zdist2
  971.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  972.             call ppm_SetSize(20)
  973.             call ppm_TextIntoBox(box#id, 's')
  974.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  975.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  976.         end
  977.  
  978.         when nn=='E3'  then
  979.         do
  980.             yw = 1.42 + zdist2
  981.             if al == 'n' then call aufltief()
  982.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  983.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  984.         end
  985.  
  986.         when nn=='Eb3' then
  987.         do
  988.             yw = 1.42 + zdist2
  989.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  990.             call ppm_SetSize(20)
  991.             call ppm_TextIntoBox(box#id, 'f')
  992.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  993.             call ppm_DrawLine(notex, zz+zdist2+1.6, (notex+0.4), zz+zdist2+1.6)
  994.         end
  995.  
  996.         when nn=='D#3'  then
  997.         do
  998.             yw = 1.52 + zdist2
  999.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1000.             call ppm_SetSize(20)
  1001.             call ppm_TextIntoBox(box#id, 's')
  1002.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  1003.         end
  1004.  
  1005.         when nn=='D3' then
  1006.         do
  1007.             yw = 1.52 + zdist2
  1008.             if al == 'n' then call aufltief()
  1009.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  1010.         end
  1011.  
  1012.         when nn=='Db3' then
  1013.         do
  1014.             yw = 1.52 + zdist2
  1015.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1016.             call ppm_SetSize(20)
  1017.             call ppm_TextIntoBox(box#id, 'f')
  1018.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  1019.         end
  1020.  
  1021.         when nn=='C#3'    then
  1022.         do
  1023.             yw = 1.62 + zdist2
  1024.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1025.             call ppm_SetSize(20)
  1026.             call ppm_TextIntoBox(box#id, 's')
  1027.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  1028.         end
  1029.  
  1030.         when nn=='C3'     then
  1031.         do
  1032.             yw = 1.62 + zdist2
  1033.             if al == 'n' then call aufltief()
  1034.             call ppm_DrawLine(notex, zz+zdist2+1.8, (notex+0.4), zz+zdist2+1.8)
  1035.         end
  1036.  
  1037.         when nn=='B2'     then
  1038.         do
  1039.             yw = 1.72 + zdist2
  1040.             if al == 'n' then call aufltief()
  1041.         end
  1042.         when nn=='Bb2'     then
  1043.         do
  1044.             yw = 1.72 + zdist2
  1045.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1046.             call ppm_SetSize(20)
  1047.             call ppm_TextIntoBox(box#id, 'f')
  1048.         end
  1049.  
  1050.         when nn=='A#2'    then
  1051.         do
  1052.             yw = 1.82 + zdist2
  1053.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1054.             call ppm_SetSize(20)
  1055.             call ppm_TextIntoBox(box#id, 's')
  1056.         end
  1057.  
  1058.         when nn=='A2'     then
  1059.         do
  1060.             yw = 1.82 + zdist2
  1061.             if al == 'n' then call aufltief()
  1062.         end
  1063.         when nn=='Ab2'    then
  1064.         do
  1065.             yw = 1.82 + zdist2
  1066.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1067.             call ppm_SetSize(20)
  1068.             call ppm_TextIntoBox(box#id, 'f')
  1069.         end
  1070.  
  1071.         when nn=='G#2'    then
  1072.         do
  1073.             yw = 1.92 + zdist2
  1074.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1075.             call ppm_SetSize(20)
  1076.             call ppm_TextIntoBox(box#id, 's')
  1077.         end
  1078.  
  1079.         when nn=='G2'     then
  1080.         do
  1081.             yw = 1.92 + zdist2
  1082.             if al == 'n' then call aufltief()
  1083.         end
  1084.         when nn=='Gb2'    then
  1085.         do
  1086.             yw = 1.92 + zdist2
  1087.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1088.             call ppm_SetSize(20)
  1089.             call ppm_TextIntoBox(box#id, 'f')
  1090.         end
  1091.  
  1092.         when nn=='F#2'    then
  1093.         do
  1094.             yw = 2.02 + zdist2
  1095.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1096.             call ppm_SetSize(20)
  1097.             call ppm_TextIntoBox(box#id, 's')
  1098.         end
  1099.  
  1100.         when nn=='F2'     then
  1101.         do
  1102.             yw = 2.02 + zdist2
  1103.             if al == 'n' then call aufltief()
  1104.         end
  1105.         when nn=='E#2'    then
  1106.         do
  1107.             yw = 2.12 + zdist2
  1108.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1109.             call ppm_SetSize(20)
  1110.             call ppm_TextIntoBox(box#id, 's')
  1111.         end
  1112.  
  1113.         when nn=='E2'     then
  1114.         do
  1115.             yw = 2.12 + zdist2
  1116.             if al == 'n' then call aufltief()
  1117.         end
  1118.         when nn=='Eb2'    then
  1119.         do
  1120.             yw = 2.12 + zdist2
  1121.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1122.             call ppm_SetSize(20)
  1123.             call ppm_TextIntoBox(box#id, 'f')
  1124.         end
  1125.  
  1126.         when nn=='D#2'    then
  1127.         do
  1128.             yw = 2.22 + zdist2
  1129.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1130.             call ppm_SetSize(20)
  1131.             call ppm_TextIntoBox(box#id, 's')
  1132.         end
  1133.  
  1134.         when nn=='D2'     then
  1135.         do
  1136.             yw = 2.22 + zdist2
  1137.             if al == 'n' then call aufltief()
  1138.         end
  1139.         when nn=='Db2'    then
  1140.         do
  1141.             yw = 2.22 + zdist2
  1142.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1143.             call ppm_SetSize(20)
  1144.             call ppm_TextIntoBox(box#id, 'f')
  1145.         end
  1146.  
  1147.         when nn=='C#2'    then
  1148.         do
  1149.             yw = 2.32 + zdist2
  1150.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1151.             call ppm_SetSize(20)
  1152.             call ppm_TextIntoBox(box#id, 's')
  1153.         end
  1154.  
  1155.         when nn=='C2'     then
  1156.         do
  1157.             yw = 2.32 + zdist2
  1158.             if al == 'n' then call aufltief()
  1159.         end
  1160.         when nn=='B1'     then yw = 2.42 + zdist2
  1161.         when nn=='Bb1'     then
  1162.         do
  1163.             yw = 2.42 + zdist2
  1164.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1165.             call ppm_SetSize(20)
  1166.             call ppm_TextIntoBox(box#id, 'f')
  1167.         end
  1168.  
  1169.         when nn=='A#1'    then
  1170.         do
  1171.             yw = 2.52 + zdist2
  1172.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1173.             call ppm_SetSize(20)
  1174.             call ppm_TextIntoBox(box#id, 's')
  1175.         end
  1176.  
  1177.         when nn=='A1'     then
  1178.         do
  1179.             yw = 2.52 + zdist2
  1180.             if al == 'n' then call aufltief()
  1181.         end
  1182.         when nn=='Ab1'    then
  1183.         do
  1184.             yw = 2.52 + zdist2
  1185.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1186.             call ppm_SetSize(20)
  1187.             call ppm_TextIntoBox(box#id, 'f')
  1188.         end
  1189.  
  1190.         when nn=='G#1'    then
  1191.         do
  1192.             yw = 2.62 + zdist2
  1193.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1194.             call ppm_SetSize(20)
  1195.             call ppm_TextIntoBox(box#id, 's')
  1196.         end
  1197.  
  1198.         when nn=='G1'     then
  1199.         do
  1200.             yw = 2.62 + zdist2
  1201.             if al == 'n' then call aufltief()
  1202.         end
  1203.         when nn=='Gb1'    then
  1204.         do
  1205.             yw = 2.62 + zdist2
  1206.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1207.             call ppm_SetSize(20)
  1208.             call ppm_TextIntoBox(box#id, 'f')
  1209.         end
  1210.  
  1211.         when nn=='F#1'    then
  1212.         do
  1213.             yw = 2.72 + zdist2
  1214.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1215.             call ppm_SetSize(20)
  1216.             call ppm_TextIntoBox(box#id, 's')
  1217.         end
  1218.  
  1219.         when nn=='F1'     then
  1220.         do
  1221.             yw = 2.72 + zdist2
  1222.             if al == 'n' then call aufltief()
  1223.         end
  1224.  
  1225.         when nn=='E#1'    then
  1226.         do
  1227.             yw = 2.82 + zdist2
  1228.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1229.             call ppm_SetSize(20)
  1230.             call ppm_TextIntoBox(box#id, 's')
  1231.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1232.         end
  1233.  
  1234.         when nn=='E1' then
  1235.         do
  1236.             yw = 2.82 + zdist2
  1237.             if al == 'n' then call aufltief()
  1238.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1239.         end
  1240.  
  1241.         when nn=='Eb1'  then
  1242.         do
  1243.             yw = 2.82 + zdist2
  1244.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1245.             call ppm_SetSize(20)
  1246.             call ppm_TextIntoBox(box#id, 'f')
  1247.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1248.         end
  1249.  
  1250.         when nn=='D#1'  then
  1251.         do
  1252.             yw = 2.92 + zdist2
  1253.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1254.             call ppm_SetSize(20)
  1255.             call ppm_TextIntoBox(box#id, 's')
  1256.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1257.         end
  1258.  
  1259.         when nn=='D1'  then
  1260.         do
  1261.             yw = 2.92 + zdist2
  1262.             if al == 'n' then call aufltief()
  1263.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1264.         end
  1265.  
  1266.         when nn=='Db1' then
  1267.         do
  1268.             yw = 2.92 + zdist2
  1269.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.27, 0.35, 0.75, 0)
  1270.             call ppm_SetSize(20)
  1271.             call ppm_TextIntoBox(box#id, 'f')
  1272.             call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1273.         end
  1274.  
  1275.         when nn=='C#1'  then
  1276.         do
  1277.           yw = 3.02 + zdist2
  1278.             box#id = ppm_CreateBox(notex-0.24, yw+zz-0.15, 0.35, 0.75, 0)
  1279.             call ppm_SetSize(20)
  1280.             call ppm_TextIntoBox(box#id, 's')
  1281.           call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1282.           call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  1283.         end
  1284.  
  1285.         when nn=='C1'  then
  1286.         do
  1287.           yw = 3.02 + zdist2
  1288.             if al == 'n' then call aufltief()
  1289.           call ppm_DrawLine(notex, zz+zdist2+3, (notex+0.4), zz+zdist2+3)
  1290.           call ppm_DrawLine(notex, zz+zdist2+3.2, (notex+0.4), zz+zdist2+3.2)
  1291.         end
  1292.         otherwise notenwert()
  1293.       end
  1294.  
  1295.         /* dimension of a notebox */
  1296.  
  1297.         notewidht = 0.64
  1298.         noteheight = 0.97
  1299.  
  1300.  
  1301.         boxid = ppm_CreateBox(notex, yw+zz, notewidht, noteheight, 0)
  1302.         call ppm_SetSize(notepkt)
  1303.         call ppm_TextIntoBox(boxid, nw)
  1304.         bakx = notex
  1305.         notex = (notex + xw)
  1306.         if notex >=18.7 then
  1307.             do
  1308.               notex = 2.5
  1309.               zz = zz + zdist
  1310.             end
  1311.         px = notex - 4
  1312.         py = zz-1
  1313.         if px < 0 then px = 0
  1314.         call ppm_SetPagePosition(px, py+1.5)
  1315.       end
  1316.    end
  1317.  end
  1318. exit
  1319.  
  1320. auflhoch:
  1321. do
  1322.   Pbox = ppm_CreateBox(notex-0.34, yw+zz+0.07, 0.6, 1.2, 0)
  1323.   boxnm = ppm_DocNextBox(Pbox)
  1324.   call ppm_DeleteContents(boxnm)
  1325.   call ppm_ImportGraphic(boxnm, 'Genies:note_pause/naturalsng', Zeichen)
  1326.   return
  1327. end
  1328.  
  1329. aufltief:
  1330. do
  1331.   Pbox = ppm_CreateBox(notex-0.34, yw+zz-0.4, 0.6, 1.2, 0)
  1332.   boxnm = ppm_DocNextBox(Pbox)
  1333.   call ppm_DeleteContents(boxnm)
  1334.   call ppm_ImportGraphic(boxnm, 'Genies:note_pause/naturalsng', Zeichen)
  1335.   return
  1336. end
  1337.  
  1338. break_d:
  1339. break_e:
  1340. break_c:
  1341. halt:
  1342.     call exit_msg("User aborted Genie!")
  1343.  
  1344. exit_msg: procedure
  1345. do
  1346.     parse arg message
  1347.  
  1348.     if message ~= '' then
  1349.     call ppm_Inform(1,message,)
  1350.  
  1351.     call ppm_ClearStatus()
  1352.     call ppm_AutoUpdate(1)
  1353.     exit
  1354. end
  1355.